package com.qpf.mycms.api.exception.enums;

import com.baomidou.mybatisplus.annotation.IEnum;
import com.qpf.mycms.api.exception.constant.ClientExceptionConstants;
import com.qpf.mycms.api.exception.constant.ExceptionConstants;
import lombok.Getter;

@Getter
public enum ClientExceptionEnum implements IEnum<Integer>  {
    CLIENT_OPERATION_ERROR(ExceptionConstants.CLIENT_EXCEPTION + ExceptionConstants.LEVEL_1_MACRO_ERROR_CODES, "客户端操作异常, 请检查输入参数"),
    USER_NOT_EXITS(ExceptionConstants.CLIENT_EXCEPTION + ClientExceptionConstants.CODE_USER_NOT_EXIST, "{} 用户不存在"),
    PARAM_NOT_NULL(ExceptionConstants.CLIENT_EXCEPTION + ClientExceptionConstants.CODE_PARAM_NOT_NULL, "{}不能为空"),
    VALUE_EXISTED(ExceptionConstants.CLIENT_EXCEPTION + ClientExceptionConstants.CODE_VALUE_EXISTED, "{}已经存在"),
    PARAM_LENGTH(ExceptionConstants.CLIENT_EXCEPTION + ClientExceptionConstants.CODE_PARAM_LENGTH, "{}长度必须在{}-{}之间"),
    PARAM_INCORRECT(ExceptionConstants.CLIENT_EXCEPTION + ClientExceptionConstants.CODE_PARAM_INCORRECT, "{}不正确");
    private final Integer code;
    private final String desc;

    ClientExceptionEnum(int code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    @Override
    public Integer getValue() {
        return code;
    }
}
